home *** CD-ROM | disk | FTP | other *** search
- Path: uunet!rs
- From: rs@uunet.UU.NET (Rich Salz)
- Newsgroups: comp.sources.unix
- Subject: v10i051: Ease translator repost, Part01/04
- Message-ID: <619@uunet.UU.NET>
- Date: 10 Jul 87 11:18:09 GMT
- Organization: UUNET Communications Services, Arlington, VA
- Lines: 2135
- Approved: rs@uunet.UU.NET
-
- Submitted-by: Wombat <rsk@j.cc.purdue.edu>
- Posting-Number: Volume 10, Issue 51
- Archive-name: ease/Part01
-
- [ I FTP'd a copy of this from Purdue, packed it up, and am posting
- it -- the one from last time I hopelessly mangled. --r$ ]
-
- #! /bin/sh
- # This is a shell archive. Remove anything before this line, then unpack
- # it by saving it into a file and typing "sh file". To overwrite existing
- # files, type "sh file -c". You can also feed this as standard input via
- # unshar, or by typing "sh <file", e.g.. If this archive is complete, you
- # will see the following message at the end:
- # "End of archive 1 (of 4)."
- PATH=/bin:/usr/bin:/usr/ucb ; export PATH
- if test -f 'MANIFEST' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'MANIFEST'\"
- else
- echo shar: Extracting \"'MANIFEST'\" \(2025 characters\)
- sed "s/^X//" >'MANIFEST' <<'END_OF_FILE'
- X File Name Archive # Description
- X-----------------------------------------------------------
- X MANIFEST 1
- X config-files 1
- X config-files/FINIS 1
- X config-files/FINIS/Makefile 1
- X config-files/FINIS/base.cpp 3
- X config-files/FINIS/berkhosts.cpp 1
- X config-files/FINIS/berkm.cpp 1
- X config-files/FINIS/compat.cpp 1
- X config-files/FINIS/localhosts.cpp 1
- X config-files/FINIS/localm.cpp 1
- X config-files/FINIS/pclm.cpp 1
- X config-files/FINIS/phonenethosts.cpp 1
- X config-files/FINIS/pucc-h.mc 1
- X config-files/FINIS/pucc-i.mc 1
- X config-files/FINIS/pucc-j.mc 2
- X config-files/FINIS/puccbase.cpp 1
- X config-files/FINIS/version.cpp 1
- X config-files/FINIS/zerobase.cpp 1
- X config-files/KEY 1
- X config-files/README 1
- X config-files/pucc-k.mc 1
- X config-files/pucc-n.mc 1
- X config-files/pucc-s.mc 1
- X config-files/puccbase.cpp 1
- X config-files/stat-l.mc 1
- X config-files/tcpm.cpp 1
- X doc 1
- X doc/Makefile 1
- X doc/ap1 1
- X doc/ap2 1
- X doc/ap3 1
- X doc/cover 1
- X doc/ease.paper 4
- X maketd 1
- X maketd/Makefile 1
- X maketd/Manual 1
- X maketd/Manual/maketd.1l 2
- X maketd/Manual/nshpopen.3l 2
- X maketd/Manual/srtunq.3l 2
- X maketd/README 1
- X maketd/abrv.c 3
- X maketd/abrv.h 1
- X maketd/breakargs.c 2
- X maketd/maketd.c 4
- X maketd/maketd.h 1
- X maketd/maketd.sh 2
- X maketd/misc.c 2
- X maketd/nshpopen.c 1
- X maketd/nshpopen.h 1
- X maketd/srtunq.c 2
- X maketd/srtunq.h 1
- X src 1
- X src/Makefile 1
- X src/emitcf.c 3
- X src/errors.c 2
- X src/idman.c 2
- X src/lexan.l 2
- X src/main.c 2
- X src/parser.y 3
- X src/strops.c 3
- X src/symtab.c 2
- X src/symtab.h 1
- END_OF_FILE
- if test 2025 -ne `wc -c <'MANIFEST'`; then
- echo shar: \"'MANIFEST'\" unpacked with wrong size!
- fi
- # end of 'MANIFEST'
- fi
- if test -f 'config-files/FINIS/Makefile' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'config-files/FINIS/Makefile'\"
- else
- echo shar: Extracting \"'config-files/FINIS/Makefile'\" \(1283 characters\)
- sed "s/^X//" >'config-files/FINIS/Makefile' <<'END_OF_FILE'
- X######################################################################
- X#
- X# Makefile for Sendmail PUCC configuration files
- X#
- X# $Id: Makefile,v 1.4 86/04/04 14:16:17 kcs Exp $
- X#
- X######################################################################
- X
- X
- XPUCCSRCS=pucc-h.mc \
- X pucc-i.mc \
- X pucc-j.mc \
- X pucc-k.mc \
- X stat-l.mc \
- X pucc-n.mc \
- X pucc-s.mc
- X
- XGENSRCS=base.cpp \
- X berkhosts.cpp \
- X berkm.cpp \
- X compat.cpp \
- X localhosts.cpp \
- X localm.cpp \
- X pclm.cpp \
- X puccbase.cpp \
- X tcpm.cpp \
- X version.cpp \
- X zerobase.cpp
- X
- XSRCS= $(GENSRCS) $(PUCCSRCS)
- X
- XPUCCALL=pucc-h.cf \
- X pucc-i.cf \
- X pucc-j.cf \
- X pucc-k.cf \
- X stat-l.cf \
- X pucc-n.cf \
- X pucc-s.cf
- X
- XALL= $(PUCCALL)
- X
- X
- X.SUFFIXES: .mc .cf
- X
- X.mc.cf:
- X /lib/cpp $*.mc > $*.cf
- X
- Xall: $(ALL)
- X
- X############################
- X# special dependencies #
- X############################
- X
- X# pessimize -- basic dependencies
- X$(ALL): base.cpp berkhosts.cpp localm.cpp localhosts.cpp pclm.cpp puccbase.cpp \
- X version.cpp zerobase.cpp
- X
- X# hosts on berknet
- Xpucc-h.cf: berkm.cpp
- X
- X# hosts on the arpanet
- Xpucc-j.cf: tcpm.cpp
- X
- X# hosts on csnet
- Xpucc-j.cf: phonenethosts.cpp
- X
- X# mailers requiring backwards compatibility
- Xberkm.cpp tcpm.cpp: compat.cpp
- X
- X#####################
- X# administrivia #
- X#####################
- X
- Xsources: $(SRCS)
- X
- Xclean:
- X rm -f $(ALL) a.out core errs
- END_OF_FILE
- if test 1283 -ne `wc -c <'config-files/FINIS/Makefile'`; then
- echo shar: \"'config-files/FINIS/Makefile'\" unpacked with wrong size!
- fi
- # end of 'config-files/FINIS/Makefile'
- fi
- if test -f 'config-files/FINIS/berkhosts.cpp' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'config-files/FINIS/berkhosts.cpp'\"
- else
- echo shar: Extracting \"'config-files/FINIS/berkhosts.cpp'\" \(576 characters\)
- sed "s/^X//" >'config-files/FINIS/berkhosts.cpp' <<'END_OF_FILE'
- X/***********************************************************
- X ***********************************************************
- X ****
- X **** Berknet Host List
- X ****
- X **** $Id: berkhosts.cpp,v 1.4 85/07/21 22:15:14 acu Exp Locker: acu $
- X ****
- X ***********************************************************
- X ***********************************************************/
- X
- Xclass
- X berkhosts = { C, pucc-c, puccc,
- X D, pucc-d, puccd,
- X E, pucc-e, pucce,
- X X, asterix, library, libr,
- X W, physics, pur-phy, phy-a,
- X physics-galileo, purdue-galileo, galileo };
- X
- END_OF_FILE
- if test 576 -ne `wc -c <'config-files/FINIS/berkhosts.cpp'`; then
- echo shar: \"'config-files/FINIS/berkhosts.cpp'\" unpacked with wrong size!
- fi
- # end of 'config-files/FINIS/berkhosts.cpp'
- fi
- if test -f 'config-files/FINIS/berkm.cpp' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'config-files/FINIS/berkm.cpp'\"
- else
- echo shar: Extracting \"'config-files/FINIS/berkm.cpp'\" \(1211 characters\)
- sed "s/^X//" >'config-files/FINIS/berkm.cpp' <<'END_OF_FILE'
- X/***********************************************************
- X ***********************************************************
- X ****
- X **** Berknet Mailer specification
- X ****
- X **** $Id: berkm.cpp,v 1.4 85/07/10 22:32:07 acu Exp $
- X ****
- X ***********************************************************
- X ***********************************************************/
- X
- X#ifdef cppCOMPAT
- X#include "compat.cpp"
- X#endif
- X
- Xmailer
- X berk {
- X Path = "/usr/net/bin/sendberkmail",
- X Flags = { f_ffrom, f_strip, f_date, f_from, f_mesg, f_addrw };
- X Sender = BERKSEND_RW;
- X Recipient = BERKREC_RW;
- X Argv = "sendberkmail -m ${m_rhost} -h ${m_hops} -t ${m_ruser}";
- X Maxsize = "25000"
- X };
- X
- Xruleset BERKSEND_RW {
- X
- X if ( path )
- X next ( OLDSTYLE_RW ( $1 ) ); /* convert to old style */
- X if ( hostname:usr )
- X return ( $1:$2); /* old berknet as is */
- X
- X if ( path < @path > )
- X return ( $1<@$2> ); /* don't modify arpanet */
- X
- X if ( hostname!usr )
- X return ( $1!$2 ); /* don't modify uucp */
- X
- X if ( < @path > )
- X return ( <@$1> ); /* don't modify <routeaddr> */
- X
- X if ( path )
- X return ( $m_shostname:$1 ); /* make others relative */
- X
- X}
- X
- X
- Xruleset BERKREC_RW {
- X
- X if ( path )
- X next ( OLDSTYLE_RW ( $1 ) ); /* convert to old style */
- X
- X}
- END_OF_FILE
- if test 1211 -ne `wc -c <'config-files/FINIS/berkm.cpp'`; then
- echo shar: \"'config-files/FINIS/berkm.cpp'\" unpacked with wrong size!
- fi
- # end of 'config-files/FINIS/berkm.cpp'
- fi
- if test -f 'config-files/FINIS/compat.cpp' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'config-files/FINIS/compat.cpp'\"
- else
- echo shar: Extracting \"'config-files/FINIS/compat.cpp'\" \(843 characters\)
- sed "s/^X//" >'config-files/FINIS/compat.cpp' <<'END_OF_FILE'
- X/***********************************************************
- X ***********************************************************
- X ****
- X **** Provide Backward Compatibility
- X ****
- X **** $Id: compat.cpp,v 1.4 85/11/24 22:46:32 acu Exp $
- X ****
- X ***********************************************************
- X ***********************************************************/
- X
- X#define cppCOMPAT 4.2
- X
- Xfield
- X berkhost: match (1) in berkhosts;
- X
- X/***************************************************
- X * General code to convert back to old style names *
- X ***************************************************/
- X
- Xruleset OLDSTYLE_RW {
- X
- X if ( usr < @berkhost > )
- X return ( $2:$1 ); /* u@bhost => h:u */
- X
- X if ( usr < @hostname ".UUCP" > )
- X retry ( $2!$1 ); /* u@host.UUCP => host!u */
- X
- X if ( usr @ hostpath ".ARPA" )
- X retry ( $1@$2 ); /* u@host.ARPA => u@host */
- X
- X}
- END_OF_FILE
- if test 843 -ne `wc -c <'config-files/FINIS/compat.cpp'`; then
- echo shar: \"'config-files/FINIS/compat.cpp'\" unpacked with wrong size!
- fi
- # end of 'config-files/FINIS/compat.cpp'
- fi
- if test -f 'config-files/FINIS/localhosts.cpp' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'config-files/FINIS/localhosts.cpp'\"
- else
- echo shar: Extracting \"'config-files/FINIS/localhosts.cpp'\" \(1906 characters\)
- sed "s/^X//" >'config-files/FINIS/localhosts.cpp' <<'END_OF_FILE'
- X/***********************************************************
- X ***********************************************************
- X ****
- X **** Campus Host List
- X ****
- X **** $Id: localhosts.cpp,v 1.3 85/06/26 16:10:15 acu Exp $
- X ****
- X ***********************************************************
- X ***********************************************************/
- X
- Xclass
- X campushosts = { pucc-c, c, puccc,
- X pucc-d, d, puccd,
- X pucc-e, e, pucce,
- X pucc-h, h, pucch,
- X pucc-i, i, pucci,
- X pucc-j, j, puccj, pucc,
- X pucc-k, k, pucck,
- X pucc-n, n, puccn,
- X stat-l, l, statl, stat,
- X purdue-arthur, arthur, purdue, purdue-cs,
- X purdue-merlin, merlin,
- X purdue-mordred, mordred, cs,
- X purdue-bmec, purdue-ecn-bmec, ecn-bmec, bmec,
- X purdue-chem, purchem, chemistry, purdue-chemistry,
- X purdue-dipl, ecn-dipl, dipl,
- X purdue-ecn-ca, ecn-ca, ca, ca-en,
- X purdue-ecn-cb, ecn-cb, cb, cb-en,
- X purdue-ecn-ec, ecn-ec, ec, ec-en,
- X purdue-ecn-ed, ecn-ed, ed, ed-en,
- X purdue-ecn-ee, ecn-ee, ee, ee-en, pur-ee, ecn, purdue-ecn,
- X purdue-ecn-ef, ecn-ef, ef, ef-en,
- X purdue-ecn-ef, ecn-ef, ef, ef-rsch,
- X purdue-ecn-eg, ecn-eg, eg, eg-en,
- X purdue-ecn-eh, ecn-eh, eh, eh-en, ecn-test,
- X purdue-ecn-ei, ecn-ei, ei, ei-en,
- X purdue-ecn-ej, ecn-ej, ej, ej-en,
- X purdue-ecn-ek, ecn-ek, ek, ek-en,
- X purdue-ecn-ga, ecn-ga, ga, ga-en,
- X purdue-ecn-gb, ecn-gb, gb, gb-en,
- X purdue-ecn-ma, ecn-ma, ma, ma-en,
- X purdue-ecn-mb, ecn-mb, mb, mb-en,
- X purdue-ecn-md, ecn-md, md, md-en,
- X purdue-ecn-pb, ecn-pb, pb, pb-en, cidmac,
- X purdue-ecn-pc, ecn-pc, pc, pc-en,
- X purdue-galileo, galileo, physics-galileo,
- X purdue-malcolm, ecn-malcolm, malcolm,
- X purdue-newton, newton, physics-newton,
- X purdue-trillian, ecn-trillian, trillian,
- X purdue-vlsi, puvlsi, vlsi,
- X purdue-zaphod, ecn-zaphod, zaphod };
- X
- X /* non-standard names for CS hosts (translated to CS) */
- X
- X othercs = { cs-arthur, cs-mordred, cs-merlin };
- END_OF_FILE
- if test 1906 -ne `wc -c <'config-files/FINIS/localhosts.cpp'`; then
- echo shar: \"'config-files/FINIS/localhosts.cpp'\" unpacked with wrong size!
- fi
- # end of 'config-files/FINIS/localhosts.cpp'
- fi
- if test -f 'config-files/FINIS/localm.cpp' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'config-files/FINIS/localm.cpp'\"
- else
- echo shar: Extracting \"'config-files/FINIS/localm.cpp'\" \(893 characters\)
- sed "s/^X//" >'config-files/FINIS/localm.cpp' <<'END_OF_FILE'
- X/***********************************************************
- X ***********************************************************
- X ****
- X **** Local and Program Mailer specification
- X ****
- X **** $Id: localm.cpp,v 1.4 85/07/10 22:38:09 acu Exp $
- X ****
- X ***********************************************************
- X ***********************************************************/
- X
- Xmailer
- X local {
- X Path = "/bin/mail",
- X Flags = { f_rfrom, f_locm, f_strip, f_date, f_from,
- X f_mesg, f_mult, f_noufrom },
- X Sender = MAGIC_RW,
- X Recipient = UNIMPLEMENTED,
- X Argv = "mail -d ${m_ruser}",
- X Maxsize = "200000"
- X };
- X
- X prog {
- X Path = "/bin/sh",
- X Flags = { f_locm, f_strip, f_date, f_from, f_mesg, f_upperu },
- X Sender = MAGIC_RW,
- X Recipient = UNIMPLEMENTED,
- X Argv = "sh -c ${m_ruser}",
- X Maxsize = "200000"
- X };
- X
- X
- Xruleset MAGIC_RW {
- X
- X if ( @ )
- X return ( "MAILER-DAEMON" ); /* errors to mailer-daemon */
- X
- X}
- END_OF_FILE
- if test 893 -ne `wc -c <'config-files/FINIS/localm.cpp'`; then
- echo shar: \"'config-files/FINIS/localm.cpp'\" unpacked with wrong size!
- fi
- # end of 'config-files/FINIS/localm.cpp'
- fi
- if test -f 'config-files/FINIS/pclm.cpp' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'config-files/FINIS/pclm.cpp'\"
- else
- echo shar: Extracting \"'config-files/FINIS/pclm.cpp'\" \(995 characters\)
- sed "s/^X//" >'config-files/FINIS/pclm.cpp' <<'END_OF_FILE'
- X/****************************************************************************
- X ****************************************************************************
- X ****
- X **** PCL11 Mailer specification
- X ****
- X **** Messages processed by this configuration are assumed to remain
- X **** in the same domain. Hence, they may not necessarily correspond
- X **** to RFC822 in all details.
- X ****
- X **** $Id: pclm.cpp,v 1.4 85/06/26 15:10:46 acu Exp $
- X ****
- X ****************************************************************************
- X ****************************************************************************/
- X
- Xmailer
- X pcl {
- X Path = "[IPC]",
- X Flags = { f_mult, f_date, f_from, f_mesg, f_upperu,
- X f_addrw, f_dot, f_smtp },
- X Sender = HOSTNAME_RW,
- X Recipient = HOSTNAME_RW,
- X Argv = "IPC ${m_rhost}",
- X Maxsize = "100000"
- X };
- X
- Xruleset HOSTNAME_RW {
- X
- X if ( anypath < @path > anypath )
- X return ( $1<@$2>$3 ); /* already ok */
- X
- X if ( path )
- X return ( $1<@$m_sitename ); /* tack on our hostname */
- X
- X}
- END_OF_FILE
- if test 995 -ne `wc -c <'config-files/FINIS/pclm.cpp'`; then
- echo shar: \"'config-files/FINIS/pclm.cpp'\" unpacked with wrong size!
- fi
- # end of 'config-files/FINIS/pclm.cpp'
- fi
- if test -f 'config-files/FINIS/phonenethosts.cpp' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'config-files/FINIS/phonenethosts.cpp'\"
- else
- echo shar: Extracting \"'config-files/FINIS/phonenethosts.cpp'\" \(1481 characters\)
- sed "s/^X//" >'config-files/FINIS/phonenethosts.cpp' <<'END_OF_FILE'
- X/*******************************************************
- X *******************************************************
- X ****
- X **** Phonenet Host List
- X ****
- X **** Mail to these sites should be routed
- X **** through csnet-relay.
- X ****
- X **** $Id: phonenethosts.cpp,v 1.3 85/07/10 22:37:28 acu Exp $
- X ****
- X *******************************************************
- X *******************************************************/
- X
- Xclass
- X phonehosts = { albany, alcoa-atc, alcoa-sei, arizona, asu, bostonu,
- X boulder, brandeis, brown, brown-cogsci, btl, buffalo,
- X canisius, carleton, case, clemson, colgate, colostate,
- X ct, dartmouth, depaul, digital, duke, emory, france,
- X gatech, georgetown, germany, gmr, gte-labs, houston,
- X hplabs, ibm-sj, icase, indiana, iowa-state, israel, jhu,
- X kaist, kansas-state, kent, lsu, mcnc, mtu, ncar, nmsu,
- X nmt, northeastern, nsf-cs, nwu, ohio-state, okstate,
- X oregon-grad, oregon-state, penn-state, pitt, portland,
- X princeton, rit, rpi, scarolina, smu, src, suny-bing,
- X suny-sb, syr, tamu, tektronix, ti-csl, ti-eg, toronto,
- X tufts, tulane, uab, ubc, ucd, ucf, uchicago, uconn,
- X ucsb, ucsc, udenver, ufl, uhcl, uiowa, ukans, ulowell,
- X umass, umass-boston, umich, umiss, umn-cs, unc, unh,
- X unl, unlv, uno, uoregon, upenn, usc-cse, usl, utd,
- X utenn, uvm, uwm, vanderbilt, virginia, vpi, wang-inst,
- X waterloo, williams, wfu, wright, wsu };
- END_OF_FILE
- if test 1481 -ne `wc -c <'config-files/FINIS/phonenethosts.cpp'`; then
- echo shar: \"'config-files/FINIS/phonenethosts.cpp'\" unpacked with wrong size!
- fi
- # end of 'config-files/FINIS/phonenethosts.cpp'
- fi
- if test -f 'config-files/FINIS/pucc-h.mc' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'config-files/FINIS/pucc-h.mc'\"
- else
- echo shar: Extracting \"'config-files/FINIS/pucc-h.mc'\" \(2042 characters\)
- sed "s/^X//" >'config-files/FINIS/pucc-h.mc' <<'END_OF_FILE'
- X/***********************************************************
- X ***********************************************************
- X ****
- X **** SENDMAIL CONFIGURATION FILE
- X ****
- X **** For PUCC-H
- X ****
- X **** $Id: pucc-h.mc,v 1.2 86/04/04 14:18:03 kcs Exp $
- X ****
- X ***********************************************************
- X ***********************************************************/
- X
- X
- X/***********************************************************
- X ** local info
- X ***********************************************************/
- X
- Xmacro
- X m_sitename = "h.cc.purdue.edu"; /* internet hostname */
- X berkname = "h.cc.purdue.edu"; /* berknet hostname */
- X
- Xclass
- X m_sitename = { "h.cc.purdue.edu", pucc-h, pucch, h };
- X
- X
- X#include "puccbase.cpp"
- X
- X
- Xoptions
- X /***
- X o_slog = "1"; /* override logging level in base.cpp */
- X
- X
- X#include "zerobase.cpp"
- X
- X
- X/***********************************************
- X ** Machine dependent part of ruleset zero **
- X ***********************************************/
- X
- X /* resolve berknet names */
- X
- X if ( < @berkhost > : path )
- X resolve ( mailer ( berk ),
- X host ( $1 ),
- X user ( $2 ) ); /* @berkhost: ... */
- X
- X if ( usr < @berkhost > )
- X resolve ( mailer ( berk ),
- X host ( $2 ),
- X user ( $1 ) ); /* user@berknethost */
- X
- X /* we don't do uucp */
- X
- X if ( anypath < @anypath ".UUCP" > anypath )
- X resolve ( mailer ( error ),
- X user ( "Non-Local UUCP Mail Unavailable" ) );
- X
- X /* resolve campus names (actually, all non-local names) */
- X
- X if ( anypath < @anypath hostname > anypath )
- X resolve ( mailer ( pcl ),
- X host ( $3 ),
- X user ( $1<@$2$3>$4 ) ); /* user@campushost */
- X
- X if ( path )
- X resolve ( mailer ( local ),
- X user ( $1 ) ); /* everything else */
- X
- X
- X/**************************************
- X ** Host dependent address cleanup **
- X **************************************/
- X
- X
- Xruleset HOSTDEP_RW {
- X
- X if ( anypath uucphost!usr@path )
- X retry ( $3@$4 ); /* drop uucp forward */
- X
- X if ( anypath campushost ".ARPA" anypath )
- X retry ( $1$2$3 ); /* drop ".ARPA" */
- X
- X}
- X
- X#include "pclm.cpp"
- X#include "berkm.cpp"
- END_OF_FILE
- if test 2042 -ne `wc -c <'config-files/FINIS/pucc-h.mc'`; then
- echo shar: \"'config-files/FINIS/pucc-h.mc'\" unpacked with wrong size!
- fi
- # end of 'config-files/FINIS/pucc-h.mc'
- fi
- if test -f 'config-files/FINIS/pucc-i.mc' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'config-files/FINIS/pucc-i.mc'\"
- else
- echo shar: Extracting \"'config-files/FINIS/pucc-i.mc'\" \(2059 characters\)
- sed "s/^X//" >'config-files/FINIS/pucc-i.mc' <<'END_OF_FILE'
- X/***********************************************************
- X ***********************************************************
- X ****
- X **** SENDMAIL CONFIGURATION FILE
- X ****
- X **** For PUCC-I
- X ****
- X **** $Id: pucc-i.mc,v 1.2 86/04/04 14:19:21 kcs Exp $
- X ****
- X ***********************************************************
- X ***********************************************************/
- X
- X
- X
- X/***********************************************************
- X ** local info
- X ***********************************************************/
- X
- Xmacro
- X m_sitename = "i.cc.purdue.edu"; /* internet hostname */
- X
- Xclass
- X m_sitename = { "i.cc.purdue.edu", pucc-i, pucci, i };
- X
- X#include "puccbase.cpp"
- X
- Xoptions
- X /***
- X o_slog = "1"; /* override logging level in base.cpp */
- X
- X#include "zerobase.cpp"
- X
- X/**********************************************
- X ** Machine dependent part of ruleset zero **
- X **********************************************/
- X
- X /* send berknet names through relay */
- X
- X if ( < @berkhost > : path )
- X resolve ( mailer ( pcl ),
- X host ( $relay-host ),
- X user ( $2<@$1> ) ); /* @berkhost: ... */
- X
- X if ( anypath < @anypath berkhost > anypath )
- X resolve ( mailer ( pcl ),
- X host ( $relay-host ),
- X user ( $1<@$2$3>$4 ) ); /* user@berknethost */
- X
- X /* we don't do uucp */
- X
- X if ( anypath < @anypath ".UUCP" > anypath )
- X resolve ( mailer ( error ),
- X user ( "Non-Local UUCP Mail Unavailable" ) );
- X
- X /* resolve campus names (actually, all non-local names) */
- X
- X if ( anypath < @anypath hostname > anypath )
- X resolve ( mailer ( pcl ),
- X host ( $3 ),
- X user ( $1<@$2$3>$4 ) ); /* user@campushost */
- X
- X /* remaining names must be local */
- X
- X if ( path )
- X resolve ( mailer ( local ),
- X user ( $1 ) ); /* everything else */
- X
- X
- X/**************************************
- X ** Host dependent address cleanup **
- X **************************************/
- X
- Xruleset HOSTDEP_RW {
- X
- X if ( anypath uucphost!usr@path )
- X retry ( $3@$4 ); /* drop uucp forward */
- X
- X if ( anypath campushost ".ARPA" anypath )
- X retry ( $1$2$3 ); /* drop ".ARPA" */
- X
- X}
- X
- X#include "pclm.cpp"
- END_OF_FILE
- if test 2059 -ne `wc -c <'config-files/FINIS/pucc-i.mc'`; then
- echo shar: \"'config-files/FINIS/pucc-i.mc'\" unpacked with wrong size!
- fi
- # end of 'config-files/FINIS/pucc-i.mc'
- fi
- if test -f 'config-files/FINIS/puccbase.cpp' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'config-files/FINIS/puccbase.cpp'\"
- else
- echo shar: Extracting \"'config-files/FINIS/puccbase.cpp'\" \(1219 characters\)
- sed "s/^X//" >'config-files/FINIS/puccbase.cpp' <<'END_OF_FILE'
- X
- X/************************************************
- X ************************************************
- X ****
- X **** General configuration information
- X ****
- X **** $Id: puccbase.cpp,v 1.4 86/04/04 14:25:46 kcs Exp $
- X ****
- X ************************************************
- X ************************************************/
- X
- X/********************
- X * General Macros *
- X ********************/
- X
- Xmacro
- X localname = "PURDUE.EDU"; /* local domain names */
- X relay_host = "pucc-h"; /* berknet relay host */
- X m_oname = "${m_sitename}"; /* my official hostname (sort of */
- X
- Xclass
- X localname = { "PURDUE.EDU", PURDUE, CC, Purdue-CS, CS, ECN };
- X topdomain = { LOCAL, ARPA, UUCP, BITNET, CSNET }; /* known top-level domains */
- X
- X#include "localhosts.cpp"
- X#include "berkhosts.cpp"
- X#include "base.cpp"
- X
- X/*********************
- X * Rewriting rules *
- X *********************/
- X
- X/*** special local conversions ***/
- XS6
- X# R$*<@$*$=D>$* $1<@$2LOCAL>$4 convert local domain
- X# R$*<@$*$=D.ARPA>$* $1<@$2LOCAL>$4
- XR$*<@$+.$=T.$=T>$* $1<@$2.$3>$5 delete dup top level
- XR$*<@$*$=S.UUCP>$* $1<@$2$3>$4 local UUCP direct
- XR$*<@$*$=Z.UUCP>$* $1<@$2$3>$4 local UUCP direct
- XR$*<@$=Y$*>$* $1<@cs$3>$4 cs-host => cs kludge
- X
- X
- X#include "localm.cpp"
- END_OF_FILE
- if test 1219 -ne `wc -c <'config-files/FINIS/puccbase.cpp'`; then
- echo shar: \"'config-files/FINIS/puccbase.cpp'\" unpacked with wrong size!
- fi
- # end of 'config-files/FINIS/puccbase.cpp'
- fi
- if test -f 'config-files/FINIS/version.cpp' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'config-files/FINIS/version.cpp'\"
- else
- echo shar: Extracting \"'config-files/FINIS/version.cpp'\" \(98 characters\)
- sed "s/^X//" >'config-files/FINIS/version.cpp' <<'END_OF_FILE'
- X
- X/* $Id: version.cpp,v 1.3 85/05/04 17:01:03 acu Exp Locker: acu $ */
- X
- Xmacro
- X berkhosts = "4.41";
- END_OF_FILE
- if test 98 -ne `wc -c <'config-files/FINIS/version.cpp'`; then
- echo shar: \"'config-files/FINIS/version.cpp'\" unpacked with wrong size!
- fi
- # end of 'config-files/FINIS/version.cpp'
- fi
- if test -f 'config-files/FINIS/zerobase.cpp' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'config-files/FINIS/zerobase.cpp'\"
- else
- echo shar: Extracting \"'config-files/FINIS/zerobase.cpp'\" \(2139 characters\)
- sed "s/^X//" >'config-files/FINIS/zerobase.cpp' <<'END_OF_FILE'
- X
- X/***********************************************************
- X ***********************************************************
- X ****
- X **** RULESET ZERO PREAMBLE
- X ****
- X **** The beginning of ruleset zero is constant through all
- X **** configurations.
- X ****
- X **** $Id: zerobase.cpp,v 1.4 86/04/04 14:31:36 kcs Exp $
- X ****
- X ***********************************************************
- X ***********************************************************/
- X
- Xruleset BASE_RW {
- X
- X /* first make canonical */
- X
- X if ( anypath < anypath > anypath )
- X retry ( $1$2$3); /* defocus */
- X if ( path )
- X next ( NAME_CANON ( $1 ) ); /* make canonical */
- X
- X /* handle special cases..... */
- X
- X if ( @ )
- X resolve ( mailer (local),
- X user ("MAILER-DAEMON") ); /* handle <> form */
- X if ( anypath < @[path] > anypath )
- X resolve ( mailer (tcp),
- X host (hostnum ($2)),
- X user ("$1@[$2]$3") ); /* numeric internet spec */
- X
- X /* arrange for local names to be fully qualified */
- X
- X /***
- X if ( anypath < anypath campushost > anypath )
- X retry ( $1<$2$3".LOCAL">$4 ); /* user@campushost */
- X /***
- X if ( anypath < anypath berkhost > anypath )
- X retry ( $1<$2$3".LOCAL">$4 ); /* user@berkhost */
- X /***
- X if ( anypath < path ".ARPA.LOCAL" > anypath )
- X retry ( $1<$2".ARPA">$3 ); /* because ARPA is a host */
- X
- X /* delete local domain info -- this is a (temporary?) kludge */
- X
- X if ( anypath < anypath "." $localname > anypath )
- X retry ( $1<$2>$3 ); /* strip local domain */
- X if ( anypath < anypath "." localdomain > anypath )
- X retry ( $1<$2>$4 ); /* strip local subdomains */
- X
- X /* now delete (more) local info */
- X
- X if ( anypath < anypath this_host "." topdomain_id > anypath )
- X retry ( $1<$2>$5 ); /* this_host.LOCAL */
- X if ( anypath < anypath this_host > anypath )
- X retry ( $1<$2>$4 ); /* this_host */
- X if ( anypath < anypath "." > anypath )
- X retry ( $1<$2>$3 ); /* drop trailing dot */
- X if ( < @ > : anypath )
- X return ( BASE_RW ( $1 ) ); /* retry after route strip */
- X if ( anypath < @ > )
- X return ( BASE_RW ( $1 ) ); /* strip null trash and retry */
- X
- X
- X/********************************
- X * End of ruleset zero preamble *
- X ********************************/
- END_OF_FILE
- if test 2139 -ne `wc -c <'config-files/FINIS/zerobase.cpp'`; then
- echo shar: \"'config-files/FINIS/zerobase.cpp'\" unpacked with wrong size!
- fi
- # end of 'config-files/FINIS/zerobase.cpp'
- fi
- if test -f 'config-files/KEY' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'config-files/KEY'\"
- else
- echo shar: Extracting \"'config-files/KEY'\" \(1377 characters\)
- sed "s/^X//" >'config-files/KEY' <<'END_OF_FILE'
- X USES FOR MACROS AND CLASSES
- X
- X MACROS CLASSES
- X ====== =======
- X
- XA arpanet name arpanet names
- XB
- XC comp ctr gateway (ucbvax only) comp ctr hosts (ucbvax & jade only)
- X - - - - - - - - - - - - - - - - - - - - - - - - - -
- XD full local domain name (bottom) local domain names $locdomain
- XE
- XF forwarding host, $R default hosts that we cannot talk directly to
- X - - - - - - - - - - - - - - - - - - - - - - - - - -
- XG
- XH internet name all names this host is known by
- XI
- X - - - - - - - - - - - - - - - - - - - - - - - - - -
- XJ
- XK
- XL
- X - - - - - - - - - - - - - - - - - - - - - - - - - -
- XM
- XN ncp gateway list of ncp-only hosts
- XO
- X - - - - - - - - - - - - - - - - - - - - - - - - - -
- XP
- XQ
- XR relay host (e.g., ucbvax)
- X - - - - - - - - - - - - - - - - - - - - - - - - - -
- XS known internet hostnames
- XT top level domains
- XU uucp name uucp names
- X - - - - - - - - - - - - - - - - - - - - - - - - - -
- XV a machine with local uucp link uucp sites on $V machine
- XW a machine with local uucp link uucp sites on $W machine
- XX a machine with local uucp link uucp sites on $X machine
- X - - - - - - - - - - - - - - - - - - - - - - - - - -
- XY
- XZ config version code known berknet hosts $berkhosts
- END_OF_FILE
- if test 1377 -ne `wc -c <'config-files/KEY'`; then
- echo shar: \"'config-files/KEY'\" unpacked with wrong size!
- fi
- # end of 'config-files/KEY'
- fi
- if test -f 'config-files/README' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'config-files/README'\"
- else
- echo shar: Extracting \"'config-files/README'\" \(327 characters\)
- sed "s/^X//" >'config-files/README' <<'END_OF_FILE'
- XIronically enough, PUCC doesn't yet use ease for our configuration
- Xfiles. These are approximations to what will eventually become
- Xour configuration files. They are not entirely finished, but the ones
- Xin "FINIS" are pretty much done, according to what Jim Schoner said
- Xbefore he left. Someday I'll finish them...
- X
- XJeff Smith
- END_OF_FILE
- if test 327 -ne `wc -c <'config-files/README'`; then
- echo shar: \"'config-files/README'\" unpacked with wrong size!
- fi
- # end of 'config-files/README'
- fi
- if test -f 'config-files/pucc-k.mc' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'config-files/pucc-k.mc'\"
- else
- echo shar: Extracting \"'config-files/pucc-k.mc'\" \(1462 characters\)
- sed "s/^X//" >'config-files/pucc-k.mc' <<'END_OF_FILE'
- X/***********************************************************
- X ***********************************************************
- X ****
- X **** SENDMAIL CONFIGURATION FILE
- X ****
- X **** For PUCC-K
- X ****
- X **** $Id: pucc-k.mc,v 1.2 86/04/04 14:22:32 kcs Exp $
- X ****
- X ***********************************************************
- X ***********************************************************/
- X
- X
- X
- X/***********************************************************
- X ** local info
- X ***********************************************************/
- X
- X/* internet hostname */
- XDwk.cc.purdue.edu
- XCwk.cc.purdue.edu pucc-k pucck k
- X
- X#include "puccbase.cpp"
- X
- X/* override logging level in base.cpp */
- X# OL1
- X
- X#include "zerobase.cpp"
- X
- X################################################
- X### Machine dependent part of ruleset zero ###
- X################################################
- X
- X# send berknet names through relay
- XR<@$=Z>:$+ $#pcl$@$R$:$2<@$1> @berkhost: ...
- XR$*<@$*$=Z>$* $#pcl$@$R$:$1<@$2$3>$4 user@berknethost
- X
- X# we don't do uucp
- XR$*<@$*.UUCP>$* $#error$:Non-Local UUCP Mail Unavailable
- X
- X# resolve campus names (actually, all non-local names)
- XR$*<@$*$->$* $#pcl$@$3$:$1<@$2$3>$4 user@campushost
- X
- X# remaining names must be local
- XR$+ $#local$:$1 everything else
- X
- X########################################
- X### Host dependent address cleanup ###
- X########################################
- X
- XS8
- XR$*$=U!$+@$+ $3@$4 drop uucp forward
- XR$*$=S.ARPA$* $1$2$3 drop ".ARPA"
- X
- X
- Xinclude(pclm.cpp)
- END_OF_FILE
- if test 1462 -ne `wc -c <'config-files/pucc-k.mc'`; then
- echo shar: \"'config-files/pucc-k.mc'\" unpacked with wrong size!
- fi
- # end of 'config-files/pucc-k.mc'
- fi
- if test -f 'config-files/pucc-n.mc' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'config-files/pucc-n.mc'\"
- else
- echo shar: Extracting \"'config-files/pucc-n.mc'\" \(1456 characters\)
- sed "s/^X//" >'config-files/pucc-n.mc' <<'END_OF_FILE'
- X/***********************************************************
- X ***********************************************************
- X ****
- X **** SENDMAIL CONFIGURATION FILE
- X ****
- X **** For PUCC-N
- X ****
- X **** $Id: pucc-n.mc,v 1.2 86/04/04 14:23:57 kcs Exp $
- X ****
- X ***********************************************************
- X ***********************************************************/
- X
- X
- X
- X/***********************************************************
- X ** local info
- X ***********************************************************/
- X
- X/* internet hostname */
- XDwn.cc.purdue.edu
- XCwn.cc.purdue.edu pucc-n puccn n
- X
- X#include "puccbase.cpp"
- X
- X# override logging level in base.cpp
- X# OL1
- X
- Xinclude(zerobase.cpp)
- X
- X################################################
- X### Machine dependent part of ruleset zero ###
- X################################################
- X
- X# send berknet names through relay
- XR<@$=Z>:$+ $#pcl$@$R$:$2<@$1> @berkhost: ...
- XR$*<@$*$=Z>$* $#pcl$@$R$:$1<@$2$3>$4 user@berknethost
- X
- X# we don't do uucp
- XR$*<@$*.UUCP>$* $#error$:Non-Local UUCP Mail Unavailable
- X
- X# resolve campus names (actually, all non-local names)
- XR$*<@$*$->$* $#pcl$@$3$:$1<@$2$3>$4 user@campushost
- X
- X# remaining names must be local
- XR$+ $#local$:$1 everything else
- X
- X########################################
- X### Host dependent address cleanup ###
- X########################################
- X
- XS8
- XR$*$=U!$+@$+ $3@$4 drop uucp forward
- XR$*$=S.ARPA$* $1$2$3 drop ".ARPA"
- X
- X
- Xinclude(pclm.cpp)
- END_OF_FILE
- if test 1456 -ne `wc -c <'config-files/pucc-n.mc'`; then
- echo shar: \"'config-files/pucc-n.mc'\" unpacked with wrong size!
- fi
- # end of 'config-files/pucc-n.mc'
- fi
- if test -f 'config-files/pucc-s.mc' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'config-files/pucc-s.mc'\"
- else
- echo shar: Extracting \"'config-files/pucc-s.mc'\" \(1472 characters\)
- sed "s/^X//" >'config-files/pucc-s.mc' <<'END_OF_FILE'
- X/***********************************************************
- X ***********************************************************
- X ****
- X **** SENDMAIL CONFIGURATION FILE
- X ****
- X **** For PUCC-S
- X ****
- X **** $Id: pucc-s.mc,v 1.1 86/03/31 11:16:37 kcs Exp Locker: kcs $
- X ****
- X ***********************************************************
- X ***********************************************************/
- X
- X
- X
- X/***********************************************************
- X ** local info
- X ***********************************************************/
- X
- X/* internet hostname */
- XDws.cc.purdue.edu
- XCws.cc.purdue.edu pucc-s puccs s
- X
- X#include "puccbase.cpp"
- X
- X/* override logging level in base.cpp */
- X# OL1
- X
- Xinclude(zerobase.cpp)
- X
- X################################################
- X### Machine dependent part of ruleset zero ###
- X################################################
- X
- X# send berknet names through relay
- XR<@$=Z>:$+ $#pcl$@$R$:$2<@$1> @berkhost: ...
- XR$*<@$*$=Z>$* $#pcl$@$R$:$1<@$2$3>$4 user@berknethost
- X
- X# we don't do uucp
- XR$*<@$*.UUCP>$* $#error$:Non-Local UUCP Mail Unavailable
- X
- X# resolve campus names (actually, all non-local names)
- XR$*<@$*$->$* $#pcl$@$3$:$1<@$2$3>$4 user@campushost
- X
- X# remaining names must be local
- XR$+ $#local$:$1 everything else
- X
- X########################################
- X### Host dependent address cleanup ###
- X########################################
- X
- XS8
- XR$*$=U!$+@$+ $3@$4 drop uucp forward
- XR$*$=S.ARPA$* $1$2$3 drop ".ARPA"
- X
- X
- Xinclude(pclm.cpp)
- END_OF_FILE
- if test 1472 -ne `wc -c <'config-files/pucc-s.mc'`; then
- echo shar: \"'config-files/pucc-s.mc'\" unpacked with wrong size!
- fi
- # end of 'config-files/pucc-s.mc'
- fi
- if test -f 'config-files/puccbase.cpp' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'config-files/puccbase.cpp'\"
- else
- echo shar: Extracting \"'config-files/puccbase.cpp'\" \(1219 characters\)
- sed "s/^X//" >'config-files/puccbase.cpp' <<'END_OF_FILE'
- X
- X/************************************************
- X ************************************************
- X ****
- X **** General configuration information
- X ****
- X **** $Id: puccbase.cpp,v 1.4 86/04/04 14:25:46 kcs Exp $
- X ****
- X ************************************************
- X ************************************************/
- X
- X/********************
- X * General Macros *
- X ********************/
- X
- Xmacro
- X localname = "PURDUE.EDU"; /* local domain names */
- X relay_host = "pucc-h"; /* berknet relay host */
- X m_oname = "${m_sitename}"; /* my official hostname (sort of */
- X
- Xclass
- X localname = { "PURDUE.EDU", PURDUE, CC, Purdue-CS, CS, ECN };
- X topdomain = { LOCAL, ARPA, UUCP, BITNET, CSNET }; /* known top-level domains */
- X
- X#include "localhosts.cpp"
- X#include "berkhosts.cpp"
- X#include "base.cpp"
- X
- X/*********************
- X * Rewriting rules *
- X *********************/
- X
- X/*** special local conversions ***/
- XS6
- X# R$*<@$*$=D>$* $1<@$2LOCAL>$4 convert local domain
- X# R$*<@$*$=D.ARPA>$* $1<@$2LOCAL>$4
- XR$*<@$+.$=T.$=T>$* $1<@$2.$3>$5 delete dup top level
- XR$*<@$*$=S.UUCP>$* $1<@$2$3>$4 local UUCP direct
- XR$*<@$*$=Z.UUCP>$* $1<@$2$3>$4 local UUCP direct
- XR$*<@$=Y$*>$* $1<@cs$3>$4 cs-host => cs kludge
- X
- X
- X#include "localm.cpp"
- END_OF_FILE
- if test 1219 -ne `wc -c <'config-files/puccbase.cpp'`; then
- echo shar: \"'config-files/puccbase.cpp'\" unpacked with wrong size!
- fi
- # end of 'config-files/puccbase.cpp'
- fi
- if test -f 'config-files/stat-l.mc' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'config-files/stat-l.mc'\"
- else
- echo shar: Extracting \"'config-files/stat-l.mc'\" \(1384 characters\)
- sed "s/^X//" >'config-files/stat-l.mc' <<'END_OF_FILE'
- X############################################################
- X############################################################
- X#####
- X##### SENDMAIL CONFIGURATION FILE
- X#####
- X##### For STAT-L
- X#####
- X##### $Id: stat-l.mc,v 1.2 86/04/04 14:27:47 kcs Exp $
- X#####
- X############################################################
- X############################################################
- X
- X
- X
- X############################################################
- X### local info
- X############################################################
- X
- X# internet hostname
- XDwstat-l
- XCwstat-l statl l stat
- X
- Xinclude(puccbase.cpp)
- X
- Xinclude(zerobase.cpp)
- X
- X################################################
- X### Machine dependent part of ruleset zero ###
- X################################################
- X
- X# send berknet names through relay
- XR<@$=Z>:$+ $#pcl$@$R$:$2<@$1> @berkhost: ...
- XR$*<@$*$=Z>$* $#pcl$@$R$:$1<@$2$3>$4 user@berknethost
- X
- X# we don't do uucp
- XR$*<@$*.UUCP>$* $#error$:Non-Local UUCP Mail Unavailable
- X
- X# resolve campus names (actually, all non-local names)
- XR$*<@$*$->$* $#pcl$@$3$:$1<@$2$3>$4 user@campushost
- X
- X# remaining names must be local
- XR$+ $#local$:$1 everything else
- X
- X########################################
- X### Host dependent address cleanup ###
- X########################################
- X
- XS8
- XR$*$=U!$+@$+ $3@$4 drop uucp forward
- XR$*$=S.ARPA$* $1$2$3 drop ".ARPA"
- X
- X
- Xinclude(pclm.cpp)
- END_OF_FILE
- if test 1384 -ne `wc -c <'config-files/stat-l.mc'`; then
- echo shar: \"'config-files/stat-l.mc'\" unpacked with wrong size!
- fi
- # end of 'config-files/stat-l.mc'
- fi
- if test -f 'config-files/tcpm.cpp' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'config-files/tcpm.cpp'\"
- else
- echo shar: Extracting \"'config-files/tcpm.cpp'\" \(2055 characters\)
- sed "s/^X//" >'config-files/tcpm.cpp' <<'END_OF_FILE'
- X
- X/***********************************************************
- X ***********************************************************
- X ****
- X **** Arpanet TCP Mailer specification
- X ****
- X **** Messages processed by this specification are assumed to leave
- X **** the local domain -- hence, they must be canonical according to
- X **** RFC822 etc.
- X ****
- X **** $Id: tcpm.cpp,v 1.5 86/04/04 14:29:16 kcs Exp $
- X ****
- X ***********************************************************
- X ***********************************************************/
- X
- X#ifndef cppCOMPAT
- X#include "compat.cpp"
- X#endif
- X
- Xmailer
- X tcp { Path = "[IPC]",
- X Flags = { f_mult, f_date, f_from, f_mesg, f_upperu,
- X f_dot, f_llimit },
- X Sender = MAP_RW,
- X Recipient = MAP_RW,
- X Argv = "IPC ${m_rhost}",
- X Eol = "\r\n",
- X Maxsize = "100000"
- X };
- X
- X
- Xruleset MAP_RW {
- X
- X /* pass <route-addr>'s through */
- X
- X /***
- X if ( < @path > anypath )
- X return ( <@canon($1)>$2 ); /* resolve <route-addr> */
- X
- X if ( < @path > anypath )
- X return ( <@$1>$2 ); /* resolve <route-addr> */
- X
- X /* map colons to dots everywhere..... */
- X
- X if ( anypath : anypath )
- X retry ( $1.$2 ); /* map colons to dots */
- X
- X /* handle the simple case.... */
- X
- X /***
- X if ( path < @hostname ".ARPA" > )
- X return ( $1<@canon($2".ARPA")> ); /* user@host.ARPA */
- X
- X if ( path < @hostname ".ARPA" > )
- X return ( $1<@$2".ARPA"> ); /* user@host.ARPA */
- X
- X /***
- X if ( path < @hostpath ".LOCAL" > )
- X# R$+<@$+.LOCAL> $@$1%$2<@$A> local hosts
- X# R$+<@$+.BITNET> $@$1%$2.BITNET<@$A> user@host.BITNET
- X# R$+<@$+.CSNET> $@$1.$2<@CSNET-RELAY.ARPA> user@host.CSNET
- X
- X# handle other external cases
- X# R$+<@$-> $@$1<@$[$2$]> no .ARPA on simple names
- XR$+<@$-> $@$1<@$2> no .ARPA on simple names
- XR$+<@$+.$-> $@$1<@$2$3> already ok (we think)
- X# R$+<@$+.$-.ARPA> $@$1%$2<@$[$3.ARPA$]> approximate something
- XR$+<@[$+]> $@$1<@[$2]> already ok
- X
- X# convert remaining addresses to old format and externalize appropriately
- XR$+ $:$>5$1 => old format
- XR$-:$+ $@$1.$2<@$A.$D> convert berk hosts
- XR$* $@$1<@$A.$D> tack on our host name
- END_OF_FILE
- if test 2055 -ne `wc -c <'config-files/tcpm.cpp'`; then
- echo shar: \"'config-files/tcpm.cpp'\" unpacked with wrong size!
- fi
- # end of 'config-files/tcpm.cpp'
- fi
- if test ! -d 'doc' ; then
- echo shar: Creating directory \"'doc'\"
- mkdir 'doc'
- fi
- if test ! -d 'config-files' ; then
- echo shar: Creating directory \"'config-files'\"
- mkdir 'config-files'
- fi
- if test ! -d 'config-files/FINIS' ; then
- echo shar: Creating directory \"'config-files/FINIS'\"
- mkdir 'config-files/FINIS'
- fi
- if test ! -d 'maketd' ; then
- echo shar: Creating directory \"'maketd'\"
- mkdir 'maketd'
- fi
- if test ! -d 'maketd/Manual' ; then
- echo shar: Creating directory \"'maketd/Manual'\"
- mkdir 'maketd/Manual'
- fi
- if test -f 'doc/Makefile' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'doc/Makefile'\"
- else
- echo shar: Extracting \"'doc/Makefile'\" \(293 characters\)
- sed "s/^X//" >'doc/Makefile' <<'END_OF_FILE'
- X#
- X# Makefile for Ease document.
- X#
- X# James S. Schoner
- X# Purdue University Computing Center
- X#
- Xall: cover mainbody apen1 apen2 apen3
- X
- Xcover: FRC
- X troff -ms cover
- X
- Xmainbody:
- X tbl ease.paper | troff -ms
- X
- Xapen1:
- X tbl ap1 | troff -ms
- X
- Xapen2:
- X tbl ap2 | troff -ms
- X
- Xapen3:
- X tbl ap3 | troff -ms
- X
- XFRC:
- X
- END_OF_FILE
- if test 293 -ne `wc -c <'doc/Makefile'`; then
- echo shar: \"'doc/Makefile'\" unpacked with wrong size!
- fi
- # end of 'doc/Makefile'
- fi
- if test -f 'doc/ap1' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'doc/ap1'\"
- else
- echo shar: Extracting \"'doc/ap1'\" \(1384 characters\)
- sed "s/^X//" >'doc/ap1' <<'END_OF_FILE'
- X.DS C
- X\s+5\fBAppendix A\fR
- X
- X
- X\fBPre-Declared Macros\fR\s-5
- X.DE
- X.sp 5
- X.TS
- Xcenter box;
- Xc|c|c
- Xl|l|l.
- X\fBEase\fR Macro Raw Equivalent Meaning*
- X=
- X\fIm_odate\fR a The origination date in Arpanet format
- X\fIm_adate\fR b The current date in Arpanet format
- X\fIm_hops\fR c The hop count
- X\fIm_udate\fR d The date in UNIX (ctime) format
- X\fIm_smtp\fR e The SMTP entry message
- X\fIm_saddr\fR f The sender (from) address
- X\fIm_sreladdr\fR g The sender address relative to the recipient
- X\fIm_rhost\fR h The recipient host
- X\fIm_qid\fR i The queue id
- X\fIm_oname\fR j The official domain name for this site
- X\fIm_ufrom\fR l The format of the UNIX from line
- X\fIm_daemon\fR n The name of the daemon (for error messages)
- X\fIm_addrops\fR o The set of "operators" in addresses
- X\fIm_pid\fR p Sendmail's pid
- X\fIm_defaddr\fR q The default format of sender address
- X\fIm_protocol\fR r Protocol used
- X\fIm_shostname\fR s Sender's host name
- X\fIm_ctime\fR t A numeric representation of the current time
- X\fIm_ruser\fR u The recipient user
- X\fIm_version\fR v The version number of sendmail
- X\fIm_sitename\fR w The hostname of this site
- X\fIm_sname\fR x The full name of the sender
- X\fIm_stty\fR y The id of the sender's tty
- X\fIm_rhdir\fR z The home directory of the recipient
- X.TE
- X.FS
- X* Taken from pages 15 and 16 of the Installation and Operation Guide
- Xfor Sendmail (UNIX Programmer's Manual, Volume 2c), by Eric Allman.
- X.FE
- END_OF_FILE
- if test 1384 -ne `wc -c <'doc/ap1'`; then
- echo shar: \"'doc/ap1'\" unpacked with wrong size!
- fi
- # end of 'doc/ap1'
- fi
- if test -f 'doc/ap2' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'doc/ap2'\"
- else
- echo shar: Extracting \"'doc/ap2'\" \(1153 characters\)
- sed "s/^X//" >'doc/ap2' <<'END_OF_FILE'
- X.DS C
- X\s+5\fBAppendix B\fR
- X
- X
- X\fBSendmail Options\fR\s-5
- X.DE
- X.sp 2
- X.PP
- XFor a complete description of Sendmail's options and their values, refer to
- XAppendix B of the Installation and Operation Guide for Sendmail (UNIX
- XProgrammer's Manual, Volume 2c), by Eric Allman.
- X.sp 2
- X.TS
- Xcenter box;
- Xc|c
- Xl|l.
- XSendmail Option (\fBEase\fR) Sendmail Option (Raw) Special Values
- X=
- X\fIo_alias\fR A
- X\fIo_ewait\fR a
- X\fIo_bsub\fR B
- X\fIo_qwait\fR c
- X\fIo_delivery\fR (special values below) d (special values below)
- X \fId_interactive\fR i
- X \fId_background\fR b
- X \fId_queue\fR q
- X\fIo_rebuild\fR D
- X\fIo_handling\fR (special values below) e (special values below)
- X \fIh_print\fR p
- X \fIh_exit\fR q
- X \fIh_mail\fR m
- X \fIh_write\fR w
- X \fIh_mailz\fR e
- X\fIo_tmode\fR F
- X\fIo_usave\fR f
- X\fIo_gid\fR g
- X\fIo_fsmtp\fR H
- X\fIo_skipd\fR i
- X\fIo_slog\fR L
- X\fIo_rsend\fR m
- X\fIo_dnet\fR N
- X\fIo_hformat\fR o
- X\fIo_qdir\fR Q
- X\fIo_tread\fR r
- X\fIo_flog\fR S
- X\fIo_safe\fR s
- X\fIo_qtimeout\fR T
- X\fIo_timezone\fR t
- X\fIo_dmuid\fR u
- X\fIo_verbose\fR v
- X\fIo_wizpass\fR W
- X\fIo_loadq\fR x
- X\fIo_loadnc\fR X
- X.TE
- END_OF_FILE
- if test 1153 -ne `wc -c <'doc/ap2'`; then
- echo shar: \"'doc/ap2'\" unpacked with wrong size!
- fi
- # end of 'doc/ap2'
- fi
- if test -f 'doc/ap3' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'doc/ap3'\"
- else
- echo shar: Extracting \"'doc/ap3'\" \(689 characters\)
- sed "s/^X//" >'doc/ap3' <<'END_OF_FILE'
- X.DS C
- X\s+5\fBAppendix C\fR
- X
- X
- X\fBMailer Flags\fR\s-5
- X.DE
- X.sp 5
- X.PP
- XFor a complete description of mailer flags, refer to
- XAppendix C of the Installation and Operation Guide for Sendmail (UNIX
- XProgrammer's Manual, Volume 2c), by Eric Allman.
- X.sp 5
- X.TS
- Xcenter box;
- Xc|c
- Xl|l.
- XMailer Flag (\fBEase\fR) Mailer Flag (Raw)
- X=
- X\fIf_ffrom\fR f
- X\fIf_rfrom\fR r
- X\fIf_noreset\fR S
- X\fIf_noufrom\fR n
- X\fIf_locm\fR l
- X\fIf_strip\fR s
- X\fIf_mult\fR m
- X\fIf_from\fR F
- X\fIf_date\fR D
- X\fIf_mesg\fR M
- X\fIf_full\fR x
- X\fIf_return\fR P
- X\fIf_upperu\fR u
- X\fIf_upperh\fR h
- X\fIf_arpa\fR A
- X\fIf_ufrom\fR U
- X\fIf_expensive\fR e
- X\fIf_dot\fR X
- X\fIf_llimit\fR L
- X\fIf_retsmtp\fR p
- X\fIf_smtp\fR I
- X\fIf_addrw\fR C
- X.TE
- END_OF_FILE
- if test 689 -ne `wc -c <'doc/ap3'`; then
- echo shar: \"'doc/ap3'\" unpacked with wrong size!
- fi
- # end of 'doc/ap3'
- fi
- if test -f 'doc/cover' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'doc/cover'\"
- else
- echo shar: Extracting \"'doc/cover'\" \(262 characters\)
- sed "s/^X//" >'doc/cover' <<'END_OF_FILE'
- X.DA
- X.sp 15
- X.nr PS 14
- X.ps 14
- X.DS C
- X
- X.DE
- X.sp 10
- X.nr PS 36
- X.ps 36
- X.DS C
- X\fBEase:\fR
- X.DE
- X.sp 5
- X.nr PS 22
- X.ps 22
- X.DS C
- XA Configuration Language
- X
- Xfor Sendmail
- X.DE
- X.sp 13
- X.nr PS 14
- X.ps 14
- X.DS C
- Xby
- X
- X\fIJames S. Schoner\fR
- X\fIPurdue University Computing Center\fR
- X.DE
- END_OF_FILE
- if test 262 -ne `wc -c <'doc/cover'`; then
- echo shar: \"'doc/cover'\" unpacked with wrong size!
- fi
- # end of 'doc/cover'
- fi
- if test -f 'maketd/Makefile' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'maketd/Makefile'\"
- else
- echo shar: Extracting \"'maketd/Makefile'\" \(1371 characters\)
- sed "s/^X//" >'maketd/Makefile' <<'END_OF_FILE'
- X# For a VAX
- XDEFS= -DBSD4_2
- XLDFLAGS=
- X
- X# For a PDP 11/70
- X# DEFS= -DBSD2_9
- X# LDFLAGS= -i
- X
- XINCLUDE=
- XCFLAGS= -O ${DEFS} ${INCLUDE}
- XDEST= /usr/new/bin
- X
- XSRC= abrv.c maketd.c misc.c nshpopen.c breakargs.c srtunq.c
- XHDR= maketd.h abrv.h nshpopen.h srtunq.h
- XOBJ= maketd.o abrv.o misc.o nshpopen.o breakargs.o srtunq.o
- X
- Xall: maketd
- X
- Xmaketd: ${OBJ}
- X ${CC} ${LDFLAGS} ${OBJ} -o maketd
- X
- Xclean: FRC
- X rm -f ${OBJ} maketd \#* *.bak core a.out
- X
- Xdepend: source
- X maketd -a ${DEFS} ${INCLUDE} ${SRC}
- X
- Xinstall: maketd
- X install -s -m 0751 -o binary -g system maketd ${DEST}
- X
- Xlint: source
- X lint -hpx ${SRC}
- X
- Xprint: source
- X lpr -p Makefile ${HDR} ${SRC}
- X
- Xshar: source
- X shar Makefile ${SRC} ${HDR} Manual
- X
- Xsource: Makefile ${SRC} ${HDR}
- X
- Xspotless: clean
- X rcsclean ${SRC} ${HDR} Makefile
- X
- X${SRC} ${HDR}:
- X co $@
- X
- XFRC:
- X
- X# a clever way to save a few more characters
- XI=/usr/include/
- XS=/usr/include/sys/
- X
- X# DO NOT DELETE THIS LINE - make depend DEPENDS ON IT
- X
- Xabrv.o: $Ictype.h $Istdio.h abrv.c abrv.h maketd.h srtunq.h
- X
- Xmaketd.o: $Ictype.h $Imachine/machparam.h $Isignal.h $Istdio.h $Sdir.h \
- X $Sfile.h $Sparam.h $Stypes.h abrv.h maketd.c maketd.h nshpopen.h \
- X srtunq.h
- X
- Xmisc.o: $Istdio.h $Ssignal.h maketd.h misc.c
- X
- Xnshpopen.o: $Isignal.h $Istdio.h nshpopen.c
- X
- Xbreakargs.o: $Istdio.h breakargs.c
- X
- Xsrtunq.o: $Istdio.h $Stypes.h srtunq.c srtunq.h
- X
- X# *** Do not add anything here - It will go away. ***
- END_OF_FILE
- if test 1371 -ne `wc -c <'maketd/Makefile'`; then
- echo shar: \"'maketd/Makefile'\" unpacked with wrong size!
- fi
- # end of 'maketd/Makefile'
- fi
- if test -f 'maketd/README' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'maketd/README'\"
- else
- echo shar: Extracting \"'maketd/README'\" \(456 characters\)
- sed "s/^X//" >'maketd/README' <<'END_OF_FILE'
- XMaketd is a local program a Purdue University Computing Center that
- Xupdates make(1) specification files. There are two versions of maketd
- Xin this directory. One is a slow shell version that should work almost
- Xanywhere, the other is a faster C version with more featurtes that may
- Xtake some time to bring up.
- X
- XChoose either to update the makefiles in the ease source, or do it by hand.
- X
- XKevin Braunsdorf, ksb@j.cc.purdue.edu Mon Nov 3 12:02:18 EST 1986
- END_OF_FILE
- if test 456 -ne `wc -c <'maketd/README'`; then
- echo shar: \"'maketd/README'\" unpacked with wrong size!
- fi
- # end of 'maketd/README'
- fi
- if test -f 'maketd/abrv.h' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'maketd/abrv.h'\"
- else
- echo shar: Extracting \"'maketd/abrv.h'\" \(544 characters\)
- sed "s/^X//" >'maketd/abrv.h' <<'END_OF_FILE'
- X/* include srtunq.h first */
- X
- X#define MXABR 26 /* upper case chars used */
- Xextern char *abrvtbl[]; /* translation table strings */
- Xextern int abrvlen[]; /* string lengths (for speed) */
- Xextern SRTUNQ abrv; /* include file abrevs */
- X
- X/* abbreviation fucntions */
- Xextern int lngsrt(); /* compare function for abrevs */
- Xextern char *hincl(); /* optimizer for include paths */
- Xextern void srchincl(); /* find [A-Z] makefile defines */
- Xextern void abrvsetup(); /* create abrvs, write them */
- Xextern int findabr(); /* find longest abrv */
- END_OF_FILE
- if test 544 -ne `wc -c <'maketd/abrv.h'`; then
- echo shar: \"'maketd/abrv.h'\" unpacked with wrong size!
- fi
- # end of 'maketd/abrv.h'
- fi
- if test -f 'maketd/maketd.h' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'maketd/maketd.h'\"
- else
- echo shar: Extracting \"'maketd/maketd.h'\" \(809 characters\)
- sed "s/^X//" >'maketd/maketd.h' <<'END_OF_FILE'
- X#define TRUE 1
- X#define FALSE 0
- X#define SPC '\040'
- X
- X/* globals */
- Xextern char *prgnm; /* the progs called name */
- Xextern int alldep; /* -a all - /usr/include too */
- Xextern int usestdout; /* -d use stdout for makefile */
- Xextern FILE *makefd; /* file desc. for output file */
- Xextern char *makename; /* -m default file for edit */
- Xextern int backedup; /* for interupt recovery */
- Xextern char backupfn[]; /* backup file name */
- Xextern int replace; /* -r replace depends in Makefile */
- Xextern int shortincl; /* -x do abreviations */
- Xextern int verbose; /* -v verbage for the debugger */
- Xextern char usage[]; /* for error output */
- X
- Xextern void err(); /* error msg, exit cleanly */
- Xextern void errrec(); /* exit cleanly - also signal trap */
- Xextern char lastlnch(); /* last char in line (not \n) */
- END_OF_FILE
- if test 809 -ne `wc -c <'maketd/maketd.h'`; then
- echo shar: \"'maketd/maketd.h'\" unpacked with wrong size!
- fi
- # end of 'maketd/maketd.h'
- fi
- if test -f 'maketd/nshpopen.c' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'maketd/nshpopen.c'\"
- else
- echo shar: Extracting \"'maketd/nshpopen.c'\" \(2253 characters\)
- sed "s/^X//" >'maketd/nshpopen.c' <<'END_OF_FILE'
- X/* @(#)popen.c 4.5 (Berkeley) 7/6/84
- X * Modified from 4.2, 2.9 BSD popen by Stephen Uitti, PUCC, Nov '85
- X * Doesn't invoke shell, saving time, becoming more secure.
- X * Calls breakargs to break line into command line arguments,
- X * delimited by white space, but ignores globing and quoting
- X * characters. For use where you don't need shell meta character
- X * expansion or filename globbing.
- X */
- X#ifdef BSD2_9
- X#include <sys/types.h>
- X#endif
- X#include <stdio.h>
- X#include <signal.h>
- X
- X#define tst(a,b) (*mode == 'r'? (b) : (a))
- X#define RDR 0
- X#define WTR 1
- X#define SPC '\040' /* ascii space */
- X
- Xstatic int popen_pid[20];
- Xextern char **environ;
- Xchar **breakargs();
- X
- X/* no-shell popen */
- XFILE *
- Xnshpopen(cmd, mode)
- Xchar *cmd;
- Xchar *mode;
- X{
- X int p[2];
- X int myside, hisside, pid;
- X char **elist; /* the execv list */
- X
- X elist = breakargs(cmd);
- X if (pipe(p) < 0)
- X return (NULL);
- X myside = tst(p[WTR], p[RDR]);
- X hisside = tst(p[RDR], p[WTR]);
- X if ((pid = vfork()) == 0) {
- X /* myside and hisside reverse roles in child */
- X close(myside);
- X if (hisside != tst(0, 1)) { /* 0, 1 => stdin, stdout */
- X dup2(hisside, tst(0, 1));
- X close(hisside);
- X }
- X execve(elist[0], elist, environ);
- X perror("execv");
- X _exit(1); /* bombed execv, child dies */
- X }
- X free(elist); /* discard the broken args */
- X if (pid == -1) {
- X close(myside);
- X close(hisside);
- X return (NULL);
- X }
- X popen_pid[myside] = pid;
- X close(hisside);
- X return (fdopen(myside, mode));
- X}
- X
- X/* close for nshpopen */
- Xint *
- Xnshpclose(ptr)
- XFILE *ptr;
- X{
- X#ifdef BSD4_2
- X int child, pid, status, omask;
- X
- X child = popen_pid[fileno(ptr)];
- X fclose(ptr);
- X#define mask(s) (1 << ((s)-1))
- X omask = sigblock(mask(SIGINT)|mask(SIGQUIT)|mask(SIGHUP));
- X while ((pid = wait(&status)) != child && pid != -1)
- X /* empty */;
- X (void) sigsetmask(omask);
- X return (int *)(pid == -1 ? -1 : status);
- X#else /* 2.9 BSD, at least */
- X register f, r, (*hstat)(), (*istat)(), (*qstat)();
- X int status;
- X
- X f = fileno(ptr);
- X fclose(ptr);
- X istat = signal(SIGINT, SIG_IGN);
- X qstat = signal(SIGQUIT, SIG_IGN);
- X hstat = signal(SIGHUP, SIG_IGN);
- X while((r = wait(&status)) != popen_pid[f] && r != -1)
- X ;
- X if(r == -1)
- X status = -1;
- X signal(SIGINT, istat);
- X signal(SIGQUIT, qstat);
- X signal(SIGHUP, hstat);
- X return (int *)(status);
- X#endif BSD4_2
- X}
- END_OF_FILE
- if test 2253 -ne `wc -c <'maketd/nshpopen.c'`; then
- echo shar: \"'maketd/nshpopen.c'\" unpacked with wrong size!
- fi
- # end of 'maketd/nshpopen.c'
- fi
- if test -f 'maketd/nshpopen.h' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'maketd/nshpopen.h'\"
- else
- echo shar: Extracting \"'maketd/nshpopen.h'\" \(113 characters\)
- sed "s/^X//" >'maketd/nshpopen.h' <<'END_OF_FILE'
- X/* nshpopen defines */
- Xextern FILE *nshpopen(); /* open pipe */
- Xextern int *nshpclose(); /* close pipe */
- END_OF_FILE
- if test 113 -ne `wc -c <'maketd/nshpopen.h'`; then
- echo shar: \"'maketd/nshpopen.h'\" unpacked with wrong size!
- fi
- # end of 'maketd/nshpopen.h'
- fi
- if test -f 'maketd/srtunq.h' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'maketd/srtunq.h'\"
- else
- echo shar: Extracting \"'maketd/srtunq.h'\" \(1244 characters\)
- sed "s/^X//" >'maketd/srtunq.h' <<'END_OF_FILE'
- X/* include file for memory resident unique sorting routines.
- X *
- X * Written & hacked by Stephen Uitti, PUCC staff, ach@pucc-j, 1985
- X * libsrtunq is copyright (C) Purdue University, 1985
- X *
- X * Permission is hereby given for its free reproduction and
- X * modification for non-commercial purposes, provided that this
- X * notice and all embedded copyright notices be retained.
- X * Commercial organisations may give away copies as part of their
- X * systems provided that they do so without charge, and that they
- X * acknowledge the source of the software.
- X */
- X
- X/* database entry */
- Xstruct srtbl {
- X struct srtbl *srt_prev; /* parent */
- X struct srtbl *srt_less; /* something < srt_str */
- X struct srtbl *srt_more; /* something > srt_str */
- X char srt_str[1]; /* dynamic: 1 for null at EOS */
- X};
- X
- X/* database tag */
- Xtypedef struct srtent {
- X struct srtbl *srt_top; /* root of the tree */
- X struct srtbl *srt_next; /* pointer for srtget */
- X} SRTUNQ;
- X
- X/* The functions */
- Xvoid srtinit(); /* init for srtin */
- Xvoid srtdtree(); /* recursive delete of subtree */
- Xchar *srtin(); /* insert string - return err */
- Xvoid srtgti(); /* init for srtgets */
- Xchar *srtgets(); /* get next string */
- Xvoid srtfree(); /* free a database */
- END_OF_FILE
- if test 1244 -ne `wc -c <'maketd/srtunq.h'`; then
- echo shar: \"'maketd/srtunq.h'\" unpacked with wrong size!
- fi
- # end of 'maketd/srtunq.h'
- fi
- if test ! -d 'src' ; then
- echo shar: Creating directory \"'src'\"
- mkdir 'src'
- fi
- if test -f 'src/Makefile' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'src/Makefile'\"
- else
- echo shar: Extracting \"'src/Makefile'\" \(2016 characters\)
- sed "s/^X//" >'src/Makefile' <<'END_OF_FILE'
- X# Makefile for Ease Translator (et).
- X#
- X# $Header: /usr/src/local/etc/ease/RCS/Makefile,v 1.4 85/10/29 22:57:06 jss Exp $
- X#
- X# James S. Schoner, Purdue University Computing Center,
- X# West Lafayette, Indiana 47907
- X#
- X# Copyright (c) 1985 by Purdue Research Foundation
- X#
- X# All rights reserved.
- X#
- X
- XINCLUDE =
- X
- XDEST = /usr/local/etc
- X
- XOWNER = binary
- XGROUP = system
- XMODE = 751
- X
- XDEFS =
- XCFLAGS = -O ${DEFS} ${INCLUDE}
- X
- XLP = lpr
- XLPFLAGS = -J"Ease Source"
- X
- XHDR = symtab.h
- XSRC = main.c emitcf.c errors.c idman.c strops.c symtab.c
- XLST = Makefile lexan.l parser.y ${HDR} ${SRC}
- XDEP = y.tab.c lex.yy.c ${SRC}
- XOBJ = y.tab.o lex.yy.o main.o emitcf.o errors.o idman.o strops.o symtab.o
- X
- Xall: et
- X
- Xet: ${OBJ}
- X cc ${CFLAGS} -o et ${OBJ} -ll
- X
- Xclean: FRC
- X rm -f et *.o lex.yy.c y.tab.c y.output yacc.acts yacc.tmp \
- X lexdefs.h y.tab.h errs Makefile.bak
- X
- Xdepend: ${DEP} ${HDR}
- X maketd -a ${DEP}
- X
- Xinstall: et FRC
- X install -c -m ${MODE} -o ${OWNER} -g ${GROUP} -s et ${DEST}
- X
- Xlint: ${DEP} symtab.h FRC
- X lint -hxn ${DEP}
- X
- Xprint: ${LST} FRC
- X @pr -f ${LST} | ${LP} ${LPFLAGS}
- X
- Xspotless: clean FRC
- X rcsclean ${LST}
- X
- Xlexdefs.h y.tab.c: parser.y
- X yacc -d parser.y
- X -(cmp -s y.tab.h lexdefs.h || cp y.tab.h lexdefs.h)
- X
- Xlex.yy.c: lexan.l
- X lex lexan.l
- X
- X${HDR} ${SRC} lexan.l parser.y:
- X co $@
- X
- XFRC:
- X
- X
- X# DO NOT DELETE THIS LINE - maketd DEPENDS ON IT
- X# Dependencies generated at: Thu Oct 17 14:55:17 EST 1985
- X
- Xemitcf.o: symtab.h
- Xemitcf.o: /usr/include/stdio.h
- Xemitcf.o: emitcf.c
- Xerrors.o: /usr/include/stdio.h
- Xerrors.o: errors.c
- Xidman.o: symtab.h
- Xidman.o: /usr/include/stdio.h
- Xidman.o: idman.c
- Xlex.yy.o: lexdefs.h
- Xlex.yy.o: symtab.h
- Xlex.yy.o: /usr/include/stdio.h
- Xlex.yy.o: lex.yy.c
- Xmain.o: /usr/include/stdio.h
- Xmain.o: main.c
- Xstrops.o: symtab.h
- Xstrops.o: /usr/include/stdio.h
- Xstrops.o: /usr/include/strings.h
- Xstrops.o: strops.c
- Xsymtab.o: symtab.h
- Xsymtab.o: /usr/include/ctype.h
- Xsymtab.o: /usr/include/stdio.h
- Xsymtab.o: symtab.c
- Xy.tab.o: symtab.h
- Xy.tab.o: /usr/include/stdio.h
- Xy.tab.o: y.tab.c
- X
- X# DO NOT ADD ANYTHING HERE - it will go away.
- END_OF_FILE
- if test 2016 -ne `wc -c <'src/Makefile'`; then
- echo shar: \"'src/Makefile'\" unpacked with wrong size!
- fi
- # end of 'src/Makefile'
- fi
- if test -f 'src/symtab.h' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'src/symtab.h'\"
- else
- echo shar: Extracting \"'src/symtab.h'\" \(2309 characters\)
- sed "s/^X//" >'src/symtab.h' <<'END_OF_FILE'
- X/* $Header: /usr/src/local/etc/ease/RCS/symtab.h,v 1.2 85/10/29 23:47:47 jss Exp $ */
- X
- X/*
- X * symtab.h -- Definitions related to the "et" symbol table.
- X *
- X * author -- James S. Schoner, Purdue University Computing Center,
- X * West Lafayette, Indiana 47907
- X *
- X * date -- July 1, 1985
- X *
- X * Copyright (c) 1985 by Purdue Research Foundation
- X *
- X * All rights reserved.
- X *
- X */
- X
- X#define TRUE 1
- X#define FALSE 0
- X#define SST 101 /* size of hash table (symbol table) */
- X#define RSNMAX 5 /* size of a ruleset number character buffer */
- X#define VALRSNMAX 9999 /* max value of ruleset number */
- X
- X
- X/* identifier types */
- X#define ID_UNTYPED 0
- X#define ID_MACRO 01
- X#define ID_CLASS 02
- X#define ID_RULESET 04
- X#define ID_FIELD 010
- X#define ID_PREC 020
- X#define ID_MAILER 040
- X
- X/* identifier type macros */
- X#define ISTYPED(x) (x|ID_UNTYPED)
- X#define ISMACRO(x) (x&ID_MACRO)
- X#define ISCLASS(x) (x&ID_CLASS)
- X#define ISRULESET(x) (x&ID_RULESET)
- X#define ISFIELD(x) (x&ID_FIELD)
- X#define ISPREC(x) (x&ID_PREC)
- X#define ISMAILER(x) (x&ID_MAILER)
- X
- X/* block definition types */
- Xenum bdefs {def_macro, def_class, def_option, def_prec, def_trusted,
- X def_header, def_mailer, def_ruleset};
- X
- X/* option types */
- Xenum opts {opt_A, opt_a, opt_B, opt_c, opt_D, opt_d, opt_e, opt_F, opt_f,
- X opt_g, opt_H, opt_i, opt_L, opt_m, opt_N, opt_o, opt_Q, opt_r,
- X opt_S, opt_s, opt_T, opt_t, opt_u, opt_v, opt_W, opt_x, opt_X,
- X d_opt_i, d_opt_b, d_opt_q,
- X e_opt_p, e_opt_e, e_opt_m, e_opt_w, e_opt_z};
- X
- X/* flag types */
- Xenum flgs {flg_f, flg_r, flg_S, flg_n, flg_l, flg_s, flg_m, flg_F, flg_D,
- X flg_M, flg_x, flg_P, flg_u, flg_h, flg_A, flg_U, flg_e, flg_X,
- X flg_L, flg_p, flg_I, flg_C};
- X
- X/* mailer parameters */
- Xenum mats {mat_path, mat_flags, mat_sender, mat_recipient, mat_argv,
- X mat_eol, mat_maxsize};
- X
- Xstruct he { /* hash entry structure for symbol table node */
- X unsigned idtype; /* identifier type */
- X unsigned idd; /* identifier definition flag */
- X char *psb; /* identifier string buffer */
- X union {
- X char rsn[RSNMAX]; /* ruleset number */
- X int prec; /* precedence value */
- X char idc; /* one char id representation */
- X char *fstring; /* field string */
- X } idval;
- X struct he *phe; /* next hash entry */
- X};
- END_OF_FILE
- if test 2309 -ne `wc -c <'src/symtab.h'`; then
- echo shar: \"'src/symtab.h'\" unpacked with wrong size!
- fi
- # end of 'src/symtab.h'
- fi
- echo shar: End of archive 1 \(of 4\).
- cp /dev/null ark1isdone
- MISSING=""
- for I in 1 2 3 4 ; do
- if test ! -f ark${I}isdone ; then
- MISSING="${MISSING} ${I}"
- fi
- done
- if test "${MISSING}" = "" ; then
- echo You have unpacked all 4 archives.
- rm -f ark[1-9]isdone
- else
- echo You still need to unpack the following archives:
- echo " " ${MISSING}
- fi
- ## End of shell archive.
- exit 0
-
- --
-
- Rich $alz "Anger is an energy"
- Cronus Project, BBN Labs rsalz@bbn.com
- Moderator, comp.sources.unix sources@uunet.uu.net
-